package fallingGame;

/**
 * <p>
 * Title: Hero
 * </p>
 * <p>
 * Description: CS 343 Course Project Hero is a GameObject the main character in
 * the game, controlled by the user.
 * </p>
 * 
 * @author Nathanial Howard, Joe Costello, Dustin Schwingle, Jared Potter
 * @email nathanial.howard@my.uwrf.edu, anthony.costello@my.uwrf.edu,
 *        dustin.schwingle@my.uwrf.edu, jared.potter@my.uwrf.edu
 * @date December 01, 2011
 * @team Group 2
 */
public class Hero extends GameObject {

	private boolean facingRight;
	private boolean jumping;

	/**
	 * Hero
	 * 
	 * default constructor
	 * 
	 * @ensure the GameObject default constructor is called and the hero is
	 *         initialized facing right and not jumping
	 */
	public Hero() {
		// GameObject constructor
		super();
		facingRight = true;
		jumping = false;
	}

	/**
	 * isFacingRight
	 * 
	 * getter for facingRight
	 * 
	 * @return facingRight - is the Hero facing right?
	 * @ensure facingRight is returned
	 */
	public boolean isFacingRight() {
		return facingRight;
	}

	/**
	 * setFacingRight
	 * 
	 * setter for facingRight true - facing right, false - facing left
	 * 
	 * @param facingRight
	 * @ensure this.facingRight = facingRight
	 */
	public void setFacingRight(boolean facingRight) {
		this.facingRight = facingRight;
	}

	/**
	 * setJumping
	 * 
	 * setter for jumping
	 * 
	 * @param jumping
	 * @ensure this.jumping = jumping
	 */
	public void setJumping(boolean jumping) {
		this.jumping = jumping;
	}

	/**
	 * isJumping
	 * 
	 * getter for jumping
	 * 
	 * @return jumping - This boolean tells if the player is jumping
	 * @ensure jumping will be returned
	 */
	public boolean isJumping() {
		return jumping;
	}
}
